package abg.core.service.chat;

import abg.core.domain.chat.ChatSearchFriendVo;
import abg.core.domain.chat.UserFriendListVo;
import abg.core.domain.db.ChatFriendApply;
import abg.core.domain.db.SysUser;
import abg.core.domain.search.Psh;
import com.mybatisflex.core.paginate.Page;

import java.util.List;

/**
 * @author leyili
 */
public interface ChatFriendService {

    /**
     * 查询朋友列表
     *
     * @param userId
     * @return
     */
    List<UserFriendListVo> userGetFriendList(String userId);

    /**
     * 搜索好友
     *
     * @param userPhone
     * @return
     */
    ChatSearchFriendVo searchFriend(String userPhone);


    //申请添加好友分页数据
    Page<ChatFriendApply> applyFriendPageData(String userPhone, Psh psh);

    //    申请添加好友
    boolean applyFriend(String friendUserId, String remark);

    //    处理好友申请
    boolean processFriendApply(String applyId, String status, String remark);

    //    删除好友
    boolean delFriend(String friendUserId);

    List<ChatSearchFriendVo> searchFriendList(String searchKey);

    SysUser getFriendInfo(String friendId);
}
